FF4 Advance structures Item Structures ----------------- Equipment data begins at 0x0E5A1C, with the first weapon being the Fire Claw. Example block: 00 00 50 00 00 00 00 00 00 00 80 04 1 2 3 4 5 6 7 8 9 10 11 12 1. Battle power 2. Unknown 3. Accuracy bonus when equipped* 4. Unknown 5. Unknown 6. Strength bonus** 7. Agility bonus** 8. Stamina bonus** 9. Intellect bonus** 10. Spirit bonus** 11. Equip flags I 12. Equip flags II *: 0x32 is the zero point for accuracy; values higher than this increase Accuracy, whereas values lower than this decrease it. **: These values are signed bytes; that is, 0x80 and above decrease the attribute. Equip flags: Value Byte 11 Byte 12 1 DK Cecil Palom 2 Kain Porom 4 Rosa Edge 8 Rydia FuSoYa 10 Cid Paladin Cecil 20 Tellah 40 Edward 80 Yang Armor is stored in the same manner, except for these differences: 1. Defense bonus; total of bonuses cannot exceed 255 2. Unknown 3. Evasion bonus; is not capped at 99 (decimal) 4. Magic Defense bonus; total of bonuses cannot exceed 255 5. Magic Evasion bonus; is not capped at 99 (decimal) Other item data is at ECBF8 through EDE2C. Example block: 02 00 00 00 E2 04 00 00 10 00 00 00 00 00 00 00 1A 00 8F 00 1 2 3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 21 1. Icon 1 Claw A Shuriken 13 Shield 2 Rod B Boomerang 14 Helmet 3 Staff C Axe 15 Armor 4 Dark Sword D Hammer 16 Gauntlet 5 Broadsword E Instrument 17 White Magic 6 Greatsword F Bow 18 Black Magic 7 Spear 10 Arrow 19 Call Magic 8 Dagger 11 White Staff? 9 Katana 12 Whip 2- 4. 00 00 00 for all items 5- 8. Purchase price (sale price is half this) 9. Usability 00 - Unusable 10 - Battle only 20 - Out of battle only 30 - Both 10. Usage flags; only value here is 80, which means using it does not decrement inventory (only the Crystal uses this). 11-12. Unused; all items 00 00 13-14. Field effect; pairs not already defined crash the game. 15-16. 00 00 if not usable out of battle; 05 08 otherwise. 17-18. In-battle effect, but first byte is always 00; see http://www.gamefaqs.com/portable/gbadvance/file/929937/41243 White, Black, Twin, and Ninja magic is normal Call magic is 4D-5B 5C-AF does nothing B0-FF is items 19. Always 00 20. Targeting 02 - All allies only 03 - Single/Group 08 - All enemies only 20 - Self only 85 - Single enemy/ally 21. Always 00 Shop Structures ----------------- The end marker for shops is FF 00; the first two bytes contain either 00 (weapons), 01 (armor), or 02 (items). The Baron item shop is at F0EED. Item values are at http://www.gamefaqs.com/portable/gbadvance/file/929937/41243 and stored little-endian. This means, for example, that the Requiem Harp would be stored as 4401, despite being listed in the above document as 0144. Character Level Structures ---------------------------- Each level is a 16-byte struct. Offsets Start Stop Character E7838 E8367 Dark Knight Cecil E7DD8 E8367 Kain E8378 E89A7 Child Rydia E89A8 E8EA7 Tellah EDEA8 89497 Edward E9499 E9A27 Rosa E9A28 E9FD7 Yang E9FD8 EA577 Palom EA578 EAB17 Porom EAB18 EB147 Paladin Cecil EB149 EB647 Cid EB649 EBAF7 Edge EBAF9 EBE17 FuSoYa 1- 3. Experience needed to achieve the given level. (00 defines Lv1 stats) 4. Unknown; always zero 5. Strength 6. Agility 7. Stamina 8. Intellect 9. Spirit 10-12. Unknown 13-14. Minimum and maximum HP growth. 15-16. Minimum and maximum MP growth Spell Learning Data --------------------- Offsets Start Stop Character EE7C0 EE7D1 Paladin Cecil (White) EE7D2 EE80C Rosa (White) EE80D EE80E Child Rydia (Call) EE80F EE818 Child Rydia (White) EE819 EE856 Rydia (Black) EE857 EE85C Tellah (White) EE85D EE863 Tellah (Black) EE864 EE8A1 Palom (Black) EE8A2 EE8DF Porom (White) EE8E0 EE8EB Edge (Ninja) EE8EC EE904 FuSoYa (White) EE905 EE91D FuSoYa (Black) Starting spells are listed for each block, followed by an FF then Level/Spell/Null. The very last byte in a character's spell range is FF.